
/**
 * 扩展Date类型Format方法
 * **
 * 对Date的扩展，将 Date 转化为指定格式的String
 * 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符， 
 * 年(y)可以用 1-4 个占位符，毫秒(S)只能用 1 个占位符(是 1-3 位的数字) 
 * 例子： 
 * (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 
 * (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18 
 * **
 */
Date.prototype.Format = function(fmt){
    var o = {
        "M+": this.getMonth() + 1,
        "d+": this.getDate(),
        "h+": this.getHours(),
        "m+": this.getMinutes(),
        "s+": this.getSeconds(),
        "q+": Math.floor((this.getMonth() + 3) / 3),
        "S": this.getMilliseconds()
    };
    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
    if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
};


var bg = chrome.extension.getBackgroundPage();

(function(){
	var time = new Date().getTime() + (1000*60*5);
	document.getElementById('time').value = formatDate(time);
	initTaskList();
})();

function formatDate(time){
	return new Date(parseInt(time)).Format('yyyy-MM-dd hh:mm:ss');
}

function initTaskList(){
	bg.queryTask(function(tasks){
		var html = '<table>';
		html += '<tr><th>创建时间</th><th>提示时间</th><th>提示标题</th><th>提示内容</th><th>点击打开</th></tr>';
		for(var name in tasks){
			var data = tasks[name] || {};
			html += '<tr><td>'+formatDate(name)+'</td><td>'+formatDate(data.alarm.when)+'</td><td>'+data.config.title+'</td><td>'+data.config.message+'</td><td>'+data.callback+'</td></tr>';
		}
		html += '</table>';
		document.getElementById('tasks').innerHTML = html;
	});
}

bg.taskRunCallback = function(){
	initTaskList();
};


document.getElementById('newTask').onclick = function(){
	
	var time = document.getElementById('time').value;
	var title = document.getElementById('title').value;
	var message = document.getElementById('message').value;
	var url = document.getElementById('url').value;
	
	bg.newTask(Date.now().toString(), {
		title: title,
		message: message
	}, {
		when: new Date(time).getTime()
	}, url);
	setTimeout(function(){ initTaskList(); }, 3000);
	alert('添加成功');
};


document.getElementById('clearTask').onclick = function(){
	bg.clearTask();
	setTimeout(function(){ initTaskList(); }, 3000);
	alert('清除成功');
};

